1. Field of the Invention
This invention relates to methods and devices for improving the optimization of a control system.
2. Description of the Related Art
Optimizer-based control systems use an optimizer to program the operation of a controller that controls the operation of a controlled object. The controlled object is also referred to as a process xe2x80x9cplant.xe2x80x9d The optimizer adjusts the operation of the controller to improve the overall operation of the plant. The optimizers used in many optimized control systems rely on a genetic algorithm. Using a set of inputs, and a fitness function, the genetic algorithm works in a manner similar to the process of biological evolution to arrive at a solution which is, hopefully, optimal. The genetic algorithm generates sets of chromosomes and then sorts the chromosomes by evaluating each chromosome using the fitness function. Each chromosome corresponds to one embodiment, or variation, of the controller. For example, in a controller that has several adjustable parameters (such as, for example, several gain parameters) each chromosome corresponds to one set of gain settings.
In a control system based on a genetic optimizer, various parameters relating to the characteristics of the control system and/or the controlled plant are coded into one or more chromosomes, where each chromosome represents an individual. A generation of individuals is represented as a set of chromosomes. The individuals are evaluated using the fitness function to determine which chromosomes produce better control characteristics and which chromosomes produce poorer control characteristics. In other words, the fitness function is used to perform a genetic fitness evaluation of each chromosome to determine which chromosomes are genetically most fit (that is, produce the best control characteristics). The best individuals (chromosomes) are typically chosen to be the parents for the next generation of chromosomes. Some number of the lesser individuals are also typically chosen, usually at random, to be included in the next generation. The inclusion of lesser individuals is done to increase genetic diversity and to avoid optimizing towards a local optimum (rather than a more desirable global optimum). Genes (parameters) from the parent chromosomes are crossed and mutated to generate the next generation of individuals. The control parameters of the control module are evolved to find those chromosomes capable of obtaining characteristics of high fitness evaluations (good control) by repeating the above process.
Unfortunately, the above optimization method often exhibits poor efficiency. Many of the new chromosomes produce very poor control Characteristics and end up being discarded. Thus, evolution of each generation does not always proceed in a desirable direction towards a global optimum value. In some cases, the optimization proceeds away from an optimum value for a period of time. This can occur because of the inclusion of lesser individuals. It can also occur because of the random mutations created in each new generation.
To improve the efficiency of the evolution process, it is sometimes possible to use only the best and the second-best individuals of a generation as the parent individuals for the next generation, or to reduce the mutational generation of new individuals. However, being too strict when choosing the parent individuals for the next generation or stopping the mutational generation of individuals can reduce genetic diversity to a value that is too small to support good optimization. Reducing the genetic diversity, particularly in the initial evaluation stages, can have the effect of restricting the direction of the evolution such that the evolution proceeds to a local optimum rather than a global optimum. Therefore, it is undesirable to restrict the direction of evolution as described above, especially during the initial stage of evaluation.
The presence of inefficiencies in a genetic optimization is especially undesirable when the fitness evaluation is based on a user analysis (as in the case when a user manually selects the best chromosomes). Users can become annoyed when repeatedly forced to perform a fitness evaluation on clearly inferior chromosomes. However, maintaining genetic diversity is important when a user is responsible for picking those chromosomes that survive. When a user is evaluating the chromosomes, it can be difficult to evaluate the system being optimized according to some objective standard, because the evaluation of good versus bad chromosomes can vary with the ever-changing emotions and physical conditions of the user.
The present invention solves these and other problems by controlling the optimization of a control system, making it possible to improve the evolution efficiency of a genetic optimizer without unduly sacrificing genetic diversity.
One embodiment includes an optimizing control system wherein control parameters affecting the characteristics of the system are made to evolve under the direction and guidance of a user or operator. The optimizer creates a group of individual chromosomes corresponding to the control parameters being optimized. The user evaluates the chromosomes and assigns a fitness value to each chromosome. Parent individuals for the next generation are chosen based, at least in part, on fitness evaluations provided by the user. A set of candidate chromosomes for the next generation is created from the parent chromosomes. An evaluation model is then used to calculate estimated (predicted) fitness evaluations for the candidate chromosomes. The candidate chromosomes are used to create the chromosomes for the next generation, however, candidate chromosomes that do not meet a defined estimated fitness standard are replaced or modified so that the estimated fitness evaluation values for the actual chromosomes in the next generation meet a certain fitness standard. The user then provides actual fitness evaluations for each chromosome in the next generation.
The evaluation model uses the user fitness evaluations of previous chromosomes to estimate (or predict) how the user will evaluate new chromosomes. In this way the candidate chromosomes to which user will probably give low rankings will not be presented to the user. This saves the user from the tedium of evaluating chromosomes that produce poor control characteristics, and it reduces the number of chromosomes that are evaluated by the user in the process of finding an optimum chromosome. In one embodiment, the fitness model adapts to user preferences. In one embodiment, the fitness model is based on a learning algorithm.
One embodiment includes an optimization control device having a control module, an online-type of optimization process module, and an evolution efficiency-improving module. The control module outputs a control value to a plant on the basis of specified input information. The online-type of optimization process module causes the control parameters affecting the characteristics of control system to evolve based on actual fitness evaluations by repeatedly: creating a group of individuals corresponding to the control parameters in the control device; selecting a set of the individuals to be a current generation; choosing parent individuals for a next generation from the current generation based on actual (e.g., user-specified or fitness-function calculated) fitness evaluations; and creating a set of individuals for the next generation from the parent individuals. The evolution efficiency-improving module includes: a fitness evaluation model-creating module for creating/updating a fitness evaluation model on the basis of a relationship between previous chromosomes and the actual evaluation values of the previous chromosomes; and an individual-set operating module for pre-processing the next generation of chromosomes by using the fitness evaluation model to compute estimated fitness evaluation values. Chromosomes with low estimated fitness evaluation values, are replaced or modified before being used to make actual fitness evaluations.